/**
 * 
 */
package com.maohi.software.arii.mvc;

import java.util.List;

import com.maohi.software.arii.mvc.listeners.ModelListener;

/**
 * @author heifara
 * 
 */
public interface Model {

	/**
	 * Add a {@link ModelListener}
	 * 
	 * @param aListener
	 *            the listener to add
	 */
	void addModelListener(ModelListener aListener);

	/**
	 * Remove a {@link ModelListener}
	 * 
	 * @param aListener
	 *            the listener to remove
	 */
	void removeModelListener(ModelListener aListener);

	/**
	 * Return the list of {@link ModelListener}
	 * 
	 * @return the registered {@link ModelListener}
	 */
	List<ModelListener> getModelListeners();

}
